package com.ny.zmb.openapi.ysutil.from;


import com.ny.zmb.openapi.ysutil.annotation.Length;
import com.ny.zmb.openapi.ysutil.annotation.NotBlank;
import com.ny.zmb.openapi.ysutil.annotation.Pattern;
import com.ny.zmb.openapi.ysutil.base.BaseBizReqCommand;

/**
 * <P>钱包用户注册请求</P>
 * @version $Id$
 * @user linxl  2022年3月16日 上午10:25:25
 */
public class ConsumeReqCommand extends BaseBizReqCommand {

	/**
	 * TODO
	 */
	private static final long serialVersionUID = 1568358867867327395L;

	// 业务请求号
	@NotBlank(message = "业务请求号不能为空")
	@Length(max = 32, message = "业务请求号最大长度不能超过32个字符")
	private String requestNo;

	@NotBlank(message = "收款方银盛商户号不能为空")
	@Length(max = 32, message = "收款方银盛商户号最大长度不能超过32个字符")
	private String payeeMerchantNo;

	@NotBlank(message = "付款方银盛商户号不能为空")
	@Length(max = 32, message = "付款方银盛商户号最大长度不能超过32个字符")
	private String payerMerchantNo;

	@NotBlank(message = "商品名称/订单标题不能为空")
	@Length(max = 50, message = "商品名称/订单标题最大长度不能超过50个字符")
	private String orderDesc;

	@NotBlank(message = "消费金额不能为空")
	private String amount;

	@NotBlank(message = "支付账户不能为空")
	@Length(max = 20, message = "支付账户最大长度不能超过20个字符")
	private String accountType;

	@NotBlank(message = "是否分账不能为空")
	@Length(max = 2, message = "是否分账最大长度不能超过2个字符")
	@Pattern(regexp = "[Y|N]{1}", message = "是否分账错误,只能是Y,N")
	private String isDivide = "Y";

	@NotBlank(message = "交易类型不能为空")
	@Pattern(regexp = "[01|02]{2}", message = "交易类型错误,只能是01,02")
	private String tranType = "01";

	private String linkId;

	private String remark;

	private String notifyUrl;

	public String getRequestNo() {
		return requestNo;
	}

	public void setRequestNo(String requestNo) {
		this.requestNo = requestNo;
	}

	public String getPayeeMerchantNo() {
		return payeeMerchantNo;
	}

	public void setPayeeMerchantNo(String payeeMerchantNo) {
		this.payeeMerchantNo = payeeMerchantNo;
	}

	public String getPayerMerchantNo() {
		return payerMerchantNo;
	}

	public void setPayerMerchantNo(String payerMerchantNo) {
		this.payerMerchantNo = payerMerchantNo;
	}

	public String getOrderDesc() {
		return orderDesc;
	}

	public void setOrderDesc(String orderDesc) {
		this.orderDesc = orderDesc;
	}

	public String getAmount() {
		return amount;
	}

	public void setAmount(String amount) {
		this.amount = amount;
	}

	public String getAccountType() {
		return accountType;
	}

	public void setAccountType(String accountType) {
		this.accountType = accountType;
	}

	public String getIsDivide() {
		return isDivide;
	}

	public void setIsDivide(String isDivide) {
		this.isDivide = isDivide;
	}

	public String getTranType() {
		return tranType;
	}

	public void setTranType(String tranType) {
		this.tranType = tranType;
	}

	public String getLinkId() {
		return linkId;
	}

	public void setLinkId(String linkId) {
		this.linkId = linkId;
	}

	public String getRemark() {
		return remark;
	}

	public void setRemark(String remark) {
		this.remark = remark;
	}

	public String getNotifyUrl() {
		return notifyUrl;
	}

	public void setNotifyUrl(String notifyUrl) {
		this.notifyUrl = notifyUrl;
	}
}
